﻿using Grow.EventBus.Cap.PublisherDomainEvents;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Grow.EventBus.Cap.SubscriberDomainEvents
{
    public interface ISubscriberDomainEventService
    {
        Task SaveSubscriberEventAsync(SubscriberDomainEventDto subscriberDomainEventDto, CancellationToken cancellationToken);

        Task<bool> LockSubscriberEventAsync(Guid Id, CancellationToken cancellationToken);

        Task UpdateSubscriberEventAsync(Guid Id, SubscriberDomainEventStatus subscriberDomainEventStatus, CancellationToken cancellationToken);
    }
}
